package org.example.service;

import com.github.pagehelper.PageInfo;
import org.example.bean.EmailBean;

import java.time.LocalDate;
import java.util.List;

public interface IEmailService {
    /**
     * 添加邮件
     * 1、封装姓名
     * 1、添加邮件记录（默认现场时间）
     * 2、根据收件人id集合，邮件id，添加收件箱记录（状态默认未阅读）
     * @param emailBean
     * @param staffNameArray
     * @param staffIDArray
     */
    public void add(EmailBean emailBean,String[] staffNameArray,int[] staffIDArray);

    /**
     * 分页动态查询发送的邮件
     * 动态分页查询（有效）邮件记录，登录员工id为固定条件，主题、起始日期、结束日期为动态条件
     * @param PageNum 页码
     * @param sendID 发件员工id
     * @param title 主题
     * @param starDate 起始日期
     * @param endDate 结束日期
     * @return 分页对象
     */
    public PageInfo<EmailBean> cutFindSendByItem(Integer PageNum, Integer sendID, String title, LocalDate starDate, LocalDate endDate);

    /**
     * 根据邮件id查询邮件信息
     * @param emailID 邮件id
     * @return 邮件对象
     */
    public EmailBean findByID(Integer emailID);

    /**
     * 发件箱”删除“邮件
     * 根据邮件id修改邮件状态为无效
     * @param emailID 邮件id
     */
    public void del(Integer emailID);
}
